package cn.sunline.dreamvalue.service;

import cn.sunline.dreamvalue.constant.CommonResult;
import cn.sunline.dreamvalue.dto.*;

import java.io.IOException;
import java.util.Map;

/**
 * @author 11292
 * @title: DreamValueService
 * @projectName dream-value
 * @description: 梦想值服务接口类
 * @date 2020/5/717:19
 */
public interface DreamValueService {
    /**
     * 查询客户梦想值
     * @param input
     * @return
     */
    CommonResult<Map<String,String>> query(DreamValueQueryInDTO input) throws Exception;

    /**
     * 查询客户梦想值流水
     * @param input
     * @return
     */
    CommonResult<DreamValueDetailOutDTO> queryDetails(DreamValueDetailInDTO input) throws IOException, Exception;

    /**
     * 梦想值调减
     * @param input
     * @return
     */
    CommonResult<Map<String, String>> subtract(DreamValueSubtractInDTO input) throws Exception;

    /**
     * 查询客户完成进度
     * @param input
     * @return
     */
    CommonResult<DreamValueTaskOutDTO> querySchedule(DreamAcctOpenDTO input) throws Exception;

    /**
     * 调增
     * @param dto
     * @throws Exception
     * @return
     */
    CommonResult<Map<String, String>> dreamValueAdd(DreamValueAddInDTO dto) throws Exception;
}
